The transmission medium and impairments to a communication channel due to noise and interference typically cause errors in data sent through communication networks. Where the channel error-rate has wide variations, use of forward error correction techniques can be inefficient. The inefficiency is brought about by the constant transmission of a large amount of redundancy so that heavily-errored patterns will not be interpreted incorrectly. The redundancy must always be transmitted even though the heavily-errored patterns may be rare. In addition, forward error correction algorithms have a tendency to require complex or computationally intensive decoders to determine which bits are incorrect.
Conventional automatic repeat request (ARQ) algorithms which packetize data, detect errors, and request retransmission of packets are implemented with less complexity than forward error correction methods but are still vulnerable to the design compromise of including large amounts of redundancy in order to avoid falsing on receive sequences containing large numbers of errors.
Thus, there is a need for a method and a communication system having efficient and highly reliable error-detection that automatically optimize data throughput of a channel.